
DECLS(GeodeticCoord)
  {  char xstr[ COORD_STR_SIZE ],
          ystr[ COORD_STR_SIZE ];

     Coord2Str( xstr, Rad2G(gc.Geodetic.longitude) + 180, dt, true );
     Coord2Str( ystr, Rad2G(gc.Geodetic.latitude), dt, false );
     SNprintf( str, ssz, "%s%s%s", ystr, dlm, xstr );
}
DECLS(GEOREF)
  {
     StrCpy( str, gc.GEOREF.string, ssz );
}
DECLS(Geocentric)
  {
     SNprintf( str, ssz,
               "%lf%s%lf",
               gc.Geocentric.x,
               dlm,
               gc.Geocentric.y );
}
DECLS(Local_Cartesian)
  {
     SNprintf( str, ssz,
               "X %lf%sY %lf%sZ %lf",
               gc.Local_Cartesian.x, dlm,
               gc.Local_Cartesian.y, dlm,
               gc.Local_Cartesian.y );
}
DECLS(MGRS)
  {
     SNprintf( str, ssz, "%s", gc.MGRS.string );
}
DECLS(UTM)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf%s%d%c",
               gc.UTM.easting, dlm,
               gc.UTM.northing, dlm,
               gc.UTM.zone, gc.UTM.hemisphere );
}
DECLS(UPS)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf%s%c",
               gc.UPS.easting, dlm,
               gc.UPS.northing, dlm,
               gc.UPS.hemisphere );
}
DECLS(AlberStd)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Albers_Equal_Area_Conic.easting, dlm,
               gc.Albers_Equal_Area_Conic.northing );
}
DECLS(Azimuthal)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Azimuthal_Equidistant.easting, dlm,
               gc.Azimuthal_Equidistant.northing );
}
DECLS(BNG)
  {
     SNprintf( str, ssz,
               "%s",
               gc.BNG.string );
}
DECLS(Bonne)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Bonne.easting, dlm,
               gc.Bonne.northing );
}
DECLS(Cassini)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Cassini.easting, dlm,
               gc.Cassini.northing );
}
DECLS(Cylindrical_Equal_Area)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Cylindrical_Equal_Area.easting, dlm,
               gc.Cylindrical_Equal_Area.northing );
}
DECLS(Equidistant_Cylindrical)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Equidistant_Cylindrical.easting, dlm,
               gc.Equidistant_Cylindrical.northing );
}
DECLS(Eckert4)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Eckert4.easting, dlm,
               gc.Eckert4.northing );
}
DECLS(Eckert6)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Eckert6.easting, dlm,
               gc.Eckert6.northing );
}
DECLS(Gnomonic)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Gnomonic.easting, dlm,
               gc.Gnomonic.northing );
}
DECLS(Lambert_Conformal_Conic_1)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Lambert_Conformal_Conic_1.easting, dlm,
               gc.Lambert_Conformal_Conic_1.northing );
}
DECLS(Lambert_Conformal_Conic)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Lambert_Conformal_Conic.easting, dlm,
               gc.Lambert_Conformal_Conic.northing );
}
DECLS(Mercator)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Mercator.easting, dlm,
               gc.Mercator.northing );
}
DECLS(Miller_Cylindrical)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Miller_Cylindrical.easting, dlm,
               gc.Miller_Cylindrical.northing );
}
DECLS(Mollweide)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Mollweide.easting, dlm,
               gc.Mollweide.northing );
}
DECLS(Neys)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Neys.easting, dlm,
               gc.Neys.northing );
}
DECLS(NZMG)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.NZMG.easting, dlm,
               gc.NZMG.northing );
}
DECLS(Oblique_Mercator)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Oblique_Mercator.easting, dlm,
               gc.Oblique_Mercator.northing );
}
DECLS(Orthographic)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Orthographic.easting, dlm,
               gc.Orthographic.northing );
}
DECLS(Polar_Stereo)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Polar_Stereo.easting, dlm,
               gc.Polar_Stereo.northing );
}
DECLS(Polyconic)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Polyconic.easting, dlm,
               gc.Polyconic.northing );
}
DECLS(Sinusoidal)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Sinusoidal.easting, dlm,
               gc.Sinusoidal.northing );
}
DECLS(Stereographic)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Stereographic.easting, dlm,
               gc.Stereographic.northing );
}
DECLS(Transverse_Cylindrical_Equal_Area)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Transverse_Cylindrical_Equal_Area.easting, dlm,
               gc.Transverse_Cylindrical_Equal_Area.northing );
}
DECLS(Transverse_Mercator)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Transverse_Mercator.easting, dlm,
               gc.Transverse_Mercator.northing );
}
DECLS(Van_der_Grinten)
  {
     SNprintf( str, ssz,
               "E%.1lf%sN%.1lf",
               gc.Van_der_Grinten.easting, dlm,
               gc.Van_der_Grinten.northing );
}
